package com.tjh.spring5.factorybean;

import com.tjh.spring5.collectiontype.Course;
import org.springframework.beans.factory.FactoryBean;

/**
 * Create by koala on 2021-02-16
 * day14：工厂 bean（FactoryBean）：在配置文件定义 bean 类型可以和返回类型不一样
 *          第一步 创建类，让这个类作为工厂 bean，实现接口 FactoryBean
 *          第二步 实现接口里面的方法，在实现的方法中定义返回的 bean 类型
 */
public class MyBean implements FactoryBean<Course> {

    //定义返回bean
    @Override
    public Course getObject() throws Exception {
        Course course = new Course();
        course.setCname("abc");
        return course;
    }

    @Override
    public Class<?> getObjectType() {
        return null;
    }

    @Override
    public boolean isSingleton() {
        return false;
    }
}
